@火凤凰
2年前 提问
1个回答

云原生安全常用的技术有哪些

安全侠
2年前

云原生安全常用的技术有以下这些:

  • 容器(Containers):作为微服务器的最佳载体,提供了一个自打包的方式。容器是伴随着瘦客户端系统的发展而诞生的。在开发瘦客户端系统时,开发人员要花费大量的精力去关注线程安全、事务、网络、资源等等细节,从而降低了开发效率。

  • 微服务(Microservices):服务于服务之间通过高内聚低耦合的方式交互。面向服务的体系结构(SOA)架构样式的一种变体,它提倡将单一应用程序划分成一组小的服务,服务之间互相协调、互相配合,为用户提供最终价值。每个服务运行在其独立的进程中,服务与服务间采用轻量级的通信机制互相沟通(通常是基于HTTP的RESTful API)。

  • DevOps:缩短研发周期,增加部署频率,更安全地方便达成共识。是一组过程、方法与系统的统称,用于促进开发(应用程序/软件工程)、技术运营和质量保障(QA)部门之间的沟通、协作与整合。它是一种重视“软件开发人员(Dev)”和“IT运维技术人员(Ops)”之间沟通合作的文化、运动或惯例。透过自动化“软件交付”和“架构变更”的流程,来使得构建、测试、发布软件能够更加地快捷、频繁和可靠。

  • 服务网格(Service Mesh):作为基础设施,解决了服务之间的通信。网格服务定义了一组接口,这些接口的定义明确并遵守特定的惯例,用于解决服务器发现,动态服务创建、服务生命周期管理、通知等与服务生命周期有关的问题。

  • 声明式API(Declarative APIs)让系统更加健壮,命令式API可以直接发出让服务器执行的命令,例如运行容器或者停止容器等。声明式API可以声明期望的状态,系统将不断的调整实际状态,直到与期望状态保持一致。

  • 不可变基础设施(Immutable Infrastructure):不可变基础设施里的“不可变”很是相似于程序设计中的“不可变”概念。程序设计中不可变变量(Immutable Variable)就是在完成赋值后就不能发生更改,只能建立新的来总体替换旧的。因为具备这样的特性这种变量能够在并发环境下安全的使用。对于基础设施的不可变性,最基本的就是指运行服务的服务器在完成部署后,就不在进行更改。